package com.yulinlin.admin.modules.generate.domain;

import com.yulinlin.common.domain.enums.SuperEnum;

public enum ViewEnum implements SuperEnum<String> {
    //枚举
    enums("domain","domain.enums","","Enums","java"),

    page("domain","domain.page","","Page","java"),

    //实体
    entity("domain","domain","","Entity","java"),
    //配置层
    config("domain","domain.config","","Config","java"),
    //持久层
    dao("dao","dao","","Dao","java"),
    //业务接口层
    service("service","service","I","Service","java"),
    //业务实现层
    service_impl("service","service.base","","ServiceImpl","java"),
    //控制器层
    controller("controller","controller","","Controller","java"),
    view("view","view","","View","vue"),
    tree("view","view","","View","vue"),
    api("api","api","","Api","js"),
    ;

    //模块
    private String module;

    //领域
    private String domain;

    //文件前缀
    private String prefix;
    //文件后缀
    private String suffix;

    //文件类型
    private String fileType;


    public String getPrefix() {
        return prefix;
    }

    public String getSuffix() {
        return suffix;
    }

    ViewEnum(String module, String domain, String prefix, String suffix, String fileType) {
        this.module = module;
        this.domain = domain;
        this.prefix = prefix;
        this.suffix = suffix;
        this.fileType = fileType;
    }

    public String getModule() {
        return module;
    }

    public String getDomain() {
        return domain;
    }

    public String getFileType() {
        return fileType;
    }


    @Override
    public String getLabel() {
        return this.name();
    }

    @Override
    public String getValue() {
        return this.name();
    }
}
